package cn.javadog.cloud.starter.jsonfilter.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @author yuy
 * @date 2020-11-09 14:57
 * 过滤单个类, 不支持过滤多个实体
 **/
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface JsonFilter {

    Class<?> target();

    /**
     * 需要处理的字段
     */
    String[] fields() default {};

    /**
     * 是否排除，即从json中去除 fields() 的字段，大部分场景都是去除部分字段
     */
    boolean exclude() default true;

}
